import Mock from 'mockjs'
let bookData = Mock.mock({
  'data|30': [
    {
      'id|+1': 1, //id,每次加1
      bookName: '@ctitle(3,10)', //名字
      address: '@county(true)', //地址
      'price|30-1000': 30, //价格 在30-1000之间
      'stock|30-1000': 30, //库存 在30-1000之间
      shopMsg: '@ctitle(10,20)' //生成商品信息，长度为10个汉字
    }
  ]
})
// console.log(bookData)
Mock.mock('/mock/api/bookdata', 'get', {
  code: 200,
  message: '获取数据成功',
  data: bookData
})

// 修改
Mock.mock('/mock/api/bookdata', 'put', options => {
  // 解析请求参数（假设是 JSON 格式）
  const updatedData = JSON.parse(JSON.stringify(bookData))
  // console.log('数据', updatedData)
  const findItem = JSON.parse(options.body)
  // console.log('更新数据', findItem)
  // const index = updatedData.data.findIndex(item => item.id === findItem.id)
  const index = updatedData.data.findIndex(item => item.id === findItem.id)

  if (index !== -1) {
    updatedData.data[index] = findItem

    bookData.data = JSON.parse(JSON.stringify(updatedData.data))

    return { code: 200, message: '更新成功', data: updatedData.data }
  } else {
    return { code: 404, message: '未找到该书籍' }
  }
})

// 删除
Mock.mock('/mock/api/delbookdata', 'post', options => {
  const findItem = JSON.parse(options.body)
  // console.log('参数', findItem)

  // console.log('数据', bookData)
  const findIndex = bookData.data.findIndex(item => item.id == findItem.id)
  // console.log('找到了删除', findIndex)
  bookData.data.splice(findIndex, 1)
  if (findIndex !== -1) {
    return { code: 200, message: '删除成功', data: bookData.data }
  } else {
    return { code: 404, message: '未找到该书籍' }
  }
})

// 新增
Mock.mock('/mock/api/bookdata', 'post', options => {
  const addItem = JSON.parse(options.body)
  // console.log('options', addItem)
  bookData.data.unshift({ ...addItem })
  return bookData.data
})
